<?php
class OPLevelEvent {
	
	/**
	* -------------------------------------------------------------------------
	*
	* 									Attributes
	*
	* -------------------------------------------------------------------------
	*/

	/**
	* Badge corresponding to the event
	*
	* @var OPBadge
	*/
	protected $badge;
	
	/**
	 * -------------------------------------------------------------------------
	 * 
	 * 									Static
	 * 
	 * -------------------------------------------------------------------------
	 */

	/**
	* Static constructor creating a new Event with its badge
	*
	* @param $badge
	* @return OPLevelEvent
	*/
	public static function newWithBadge($badge){
		$newEvent = new OPLevelEvent();
		$newEvent->setBadge($badge);
	
		return $newEvent;
	
	}
	
	/**
	* -------------------------------------------------------------------------
	*
	* 									Dynamic
	*
	* -------------------------------------------------------------------------
	*/
	
	
	/**
	* -------------------------------------------------------------------------
	* 									Setters
	* -------------------------------------------------------------------------
	*/
	
	/**
	* Set the badge to the event
	*
	* @param $badge
	* @return OPLevelEvent
	*/
	public function setBadge($badge) {
		$this->badge = $badge;
	
		return $this;
	
	}
	
	/**
	* -------------------------------------------------------------------------
	* 									Getters
	* -------------------------------------------------------------------------
	*/
	
	/**
	* Return the badge of the Event
	*
	* @return OPBadge
	*/
	public function badge() {
		return $this->badge;
	
	}
	

	

	
}